The use of computer numerically controlled (CNC) robotic tools has become increasingly prevalent in recent years. With the advent of individual machines that are relatively affordable, the number of personal use, home shop systems as well as small-scale commercial use systems has grown accordingly. Concurrently, the Internet, a vast, public communications network of interconnected computers and smaller networks, has developed to provide a vehicle for the purchasing of goods and services by consumers. Although in general e-commerce or online shopping transactions are reasonably common, their use in the CNC field is infrequent.
CNC tools may generally be three-axis, four-axis, or five-axis machines. A three-axis machine is one that allows the tool to move linearly along mutually orthogonal X, Y, and Z axes of a fixed coordinate system. A four-axis machine is one that allows the tool to move linearly along mutually orthogonal X, Y, and Z axes of a fixed coordinate system and also allows rotation of a workpiece about a rotary axis. A five-axis machine usually puts a wrist-like fourth and fifth axis on the Z arm of a three-axis machine to allow full tangential motion of a cutter in relation to the work surface. Numerical control allows digital accuracy to position the axes of a machine and to control other factors such as the cutting speeds and feeds for a machining pattern. This positioning and control information (the Numerical Control (NC) data) makes up an NC part program or cutting file that is created by a programmer. It can be used repeatedly to make multiple parts. After they are created, the cutting files are stored in a memory of the control system of the CNC tool. The CNC tool reads the cutting file in order to machine a part.
The cutting file directs the machine through a series of steps. The instructions direct the tool with respect to where the workpiece is to be cut and in what order the cuts are to be made. The cuts may be straight line or circular. Once the CNC program is written and stored in the controller, manual action is normally limited to setting up the part, starting the CNC controller that executes the program, and carrying out any necessary manual operations such as tool changes.
There are several ways that a cutting file may be created. Use of a punched tape is a method with which NC programming originated. More recently, portions of an NC program can be created and loaded directly into the controller memory by teaching the machine with a hand held programmer.
Many CNC systems are programmed according to a standard of the Electronic Industries Association designated as EIA RS 274-D. This standard defines G-codes, also known as movement and preparatory functions, and M-codes, also known as miscellaneous functions, which are used in sequence to direct the machine tool. Individual CNC manufacturers and programmers may use these codes, define their own, or incorporate a combination of both in their own software that reads and writes cutting files. One such proprietary code is by ShopBot Tools, Inc. of Durham, N.C. The software generally converts between standard and proprietary codes through the use of conversion tables.
Cutting files can be created through various methods, most of which are available to users of relatively expensive, large-scale commercial CNC systems, but may not be readily available for less expensive small-scale commercial or home shop systems. The most direct method is for a programmer to write the code, line by line, on a personal computer (PC) using a text editor. This requires that the programmer have knowledge of all of the EIA or proprietary codes, the required syntax, and the ability to calculate positions and movements.
A menu-driven system, commonly called conversational programming, is another method for creating a cutting file, in which the programmer simply responds to queries from the controller and fills in the blanks in a displayed form. The controller then creates the NC code required to generate the motions defined by the programmer.
A method that generally requires more expensive software for creating NC code for a cutting file is through use of a Computer Aided Design/Computer Aided Manufacturing (CAD/CAM) system. Using a CAD/CAM system, the programmer first defines the geometry of the part and then the cutting path. The system software then determines the desired cut path on the particular machine. In addition there are specialized CAD/CAM programs that can be used for certain types of objects, such as signs or kitchen cabinets.
Lacking the more complicated software or the training to use it, it is difficult to create cutting files for complex objects, and making manual modifications to a cutting file is a tedious process.